val ( >>= )
  :  (('a -> 'r) -> 'r)
  -> ('a -> ('b -> 'r) -> 'r)
  -> ('b -> 'r)
  -> 'r
